var a = new Vue({
    el: "#loginfind",
    data() {
        return {
            email: "",
            code: "",
            inputCode: "",
            newPassOne: "",
            newPassTwo: "",
            canGetCode: true,
            waitTime: 61,
            cooki: "",
        }
    },
    methods: {
        //获取验证码
        getCode() {
            //1.
            //先设置为不能连续点击
            this.canGetCode = false                           //先设置为不能连续点击
            const that = this;                              //获取验证码间间隔
            that.waitTime--;                                //一调用先时间减少1
            console.log('获取时间的值：' + this.waitTime);
            const timer = setInterval(function () {
                if (that.waitTime > 1) {                        //倒计时未结束
                    that.waitTime--
                    // console.log(that.waitTime)           //每一秒的倒数都输出一下
                }
                else {
                    clearInterval(timer)
                    that.canGetCode = true                    //可以再次发送验证码
                    that.waitTime = 61                        //重置时间为60秒
                }
            }, 1000)
            //2.
            //生成随机验证码
            console.log(1)
            var s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";   //验证码中可能包含的字符
            var b = "";                                                                 //保存生成的验证码，验证码是一个字符串类型
            for (var i = 0; i < 4; i++) {
                var index = Math.floor(Math.random() * 62)                              //随机产生0-62个之间随机数
                b = b + s.charAt(index);                                                //将随机产生的数字当做字符串的下标，然后用charAt函数将它取出来然后放入b中
            }
            // this.code = b                                                            //将不再通过data保存生成的验证码的值
            var em = this.email
            // 3.
            //通过cookie设置临时变量保存验证码
            var name = 'yanzhengma'
            var zhi = b                                               //生成的验证码为cookie的值
            this.$cookies.set(
                name, zhi,                                           //设置cookie名和值
                "1800s"                                              //设置cookie的有效时间，经过此时间后自动消失
            );                                                      //30分钟内有效
            // console.log(this.$cookies.get(name))
            //4.
            //发送验证码
            //初始化
            let first = function (callback) {
                var c1 = new cloud.Cloud({
                    identityless: true,                              //必填，表示是未登录模式                 
                    resourceAppid: 'wx96f760966921f98a',             //资源方 AppID
                    resourceEnv: 'cloud1-8g54d6xb74e96e7d',          //资源方环境 ID
                })
                c1.init()
                callback(c1)                                         //回调
            };
            let callback = function (c1) {                          //完成初始化后再回调，即可访问云数据库
                const db = c1.database();                           //先判断邮箱是否是允许的
                db.collection('Users').where({ email: em }).get({
                    success: res => {
                        if (res.data.length == 1) {
                            console.log("该邮箱存在")
                            let callBack = function (c1) {          // 发送邮件验证码
                                c1.callFunction({
                                    name: 'sendEmail',              //调用发送邮件的云方法
                                    data: {
                                        "verificationCode": b,      //随机验证码
                                        "toEmail": em,              //输入的邮箱号
                                    },
                                }).then(res => {
                                    console.log("发送结果");
                                    console.log(res);
                                });
                            };
                            first(callBack);
                        }
                        else {
                            alert("该邮箱不在许可范围内")
                        }
                    },
                })

            };
            first(callback);
        },

        //返回上一页面
        goback() {
            alert("返回");
            window.history.back(-1);
        },

        //提交重置信息
        submit() {
            if (this.newPassOne.length == 0) {
                alert("新密码不能为空！")
            }
            else {
                if (this.newPassOne.length < 8) {
                    alert("密码过短!")
                }
                else {
                    if (this.inputCode.length == 0) {
                        alert("验证码不能为空！")
                    }
                    else {
                        if (this.$cookies.get('yanzhengma') == this.inputCode) {
                            if (this.newPassOne == this.newPassTwo) {
                                ////////////////////////////////////////////////////////
                                //修改密码
                                var em = this.email
                                var p = this.newPassOne
                                //初始化
                                let first = function (callback) {
                                    var c1 = new cloud.Cloud({
                                        //必填，表示是未登录模式
                                        identityless: true,
                                        //资源方 AppID
                                        resourceAppid: 'wx96f760966921f98a',
                                        //资源方环境 ID
                                        resourceEnv: 'cloud1-8g54d6xb74e96e7d',
                                    })
                                    c1.init()
                                    //回调
                                    callback(c1)
                                };
                                //完成初始化后再回调，即可访问云数据库
                                let callback = function (c1) {
                                    const db = c1.database();
                                    db.collection('Users').where({ email: em }).update({
                                        data: {
                                            webPassword: p
                                        },
                                        success: res => {
                                            console.log("修改成功！");
                                        }
                                    })

                                };
                                first(callback);
                                //////////////////////////////////////////////////////////////////
                                // alert("修改成功！即将跳转（功能未完善）")
                                this.$cookies.remove('yanzhengma')//一旦成功修改密码立刻删除该cookie
                                location.href='../index.html'
                            }
                            else {
                                alert("两次密码不一致！")
                            }
                        }
                        else {
                            alert("验证码错误！")
                        }
                    }
                }

            }
        }
    }
})

